package com.ruoyi.safety.service;

import com.ruoyi.safety.domain.Area;
import com.ruoyi.safety.dto.AreaDto;
import com.ruoyi.safety.vo.AreaVo;

import java.util.List;

/**
 * 区域Service接口
 * 
 * @author lth
 * @date 2024-03-12
 */
public interface IAreaService 
{
    /**
     * 查询区域
     * 
     * @param areaId 区域主键
     * @return 区域
     */
    public Area selectAreaByAreaId(String areaId);

    /**
     * 查询区域列表
     * 
     * @param area 区域
     * @return 区域集合
     */
    public List<Area> selectAreaList(Area area);

    /**
     * 新增区域
     * 
     * @param area 区域
     * @return 结果
     */
    public int insertArea(Area area);

    /**
     * 修改区域
     * 
     * @param area 区域
     * @return 结果
     */
    public int updateArea(Area area);

    /**
     * 批量删除区域
     * 
     * @param areaIds 需要删除的区域主键集合
     * @return 结果
     */
    public int deleteAreaByAreaIds(String[] areaIds);

    /**
     * 删除区域信息
     * 
     * @param areaId 区域主键
     * @return 结果
     */
    public int deleteAreaByAreaId(String areaId);

    /**
     * 通过mineId查询区域信息
     * @param mineId
     * @return
     */
    List listAreaByMineId(String mineId);

    /**
     * 通过区域id获取区域信息
     * @param areaId
     * @return
     */
    AreaDto AreaById(String areaId);

    /**
     * 获取区域信息通过煤矿ID
     * @param mineId
     * @return
     */
    List<Area> getAreaByMineId(String mineId);

    /**
     * 获取区域通过名称
     * @param areaName
     * @return
     */
    Area getAreaByName(String areaName);

    /**
     * 查询区域列表
     * @param areaVo
     * @return
     */
    List<AreaDto> getAreaList(AreaVo areaVo);
}
